home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.3 Development Libraries / SGI IRIX 6.3 Development Libraries.iso / dist6.3 / gl_dev.idb / usr / include / gl / attributil.h.z / attributil.h
Encoding:
C/C++ Source or Header  |  1996-12-06  |  2.0 KB  |  60 lines

  1. #ifndef __GL_ATTRIBUTIL_H__
  2. #define __GL_ATTRIBUTIL_H__
  3. /**************************************************************************
  4.  *                                      *
  5.  *          Copyright (C) 1984, Silicon Graphics, Inc.          *
  6.  *                                      *
  7.  *  These coded instructions, statements, and computer programs  contain  *
  8.  *  unpublished  proprietary  information of Silicon Graphics, Inc., and  *
  9.  *  are protected by Federal copyright law.  They  may  not be disclosed  *
  10.  *  to  third  parties  or copied or duplicated in any form, in whole or  *
  11.  *  in part, without the prior written consent of Silicon Graphics, Inc.  *
  12.  *                                      *
  13.  **************************************************************************/
  14.  
  15. #define ATTRIB_HASH_SIZE 128        /* should be power of two */
  16. #define ATTRIB_HASH(x)    ((x) & (ATTRIB_HASH_SIZE - 1))
  17.  
  18. typedef struct genericrec {
  19.     struct genericrec *next;
  20.     long name;
  21. } Genericrec;
  22.  
  23. typedef struct basisrec {
  24.     struct basisrec *next;        /* must match genericrec    */
  25.     long name;                /* must match genericrec    */
  26.     long internal;
  27.     float basis[16];            /* XXX should be Matrix */
  28. } Basisrec;
  29.  
  30. typedef struct fontrec {
  31.     struct fontrec *next;        /* must match genericrec    */
  32.     long name;                /* must match genericrec    */
  33.     struct font_s *fontdef;
  34. #if defined(IGLOO)
  35.     unsigned int base;
  36. #endif
  37. } Fontrec;
  38.  
  39. typedef struct linestylerec {
  40.         struct linestylerec *next;      /* must match genericrec        */
  41.         long name;                      /* must match genericrec        */
  42. #if defined(LIGHT) || defined(NEWPORT)
  43.         unsigned long  bitpattern;
  44. #else /* !LIGHT */
  45.         unsigned short bitpattern;
  46. #endif /* LIGHT */
  47. #ifdef ECLIPSE /* Take out once right to left lines supported in hardware */
  48.         unsigned short stipints[17];
  49.         float stipfloats[16];
  50. #endif /* ECLIPSE */
  51. } Linestylerec;
  52.  
  53. extern unsigned char    gl_bitrev[];
  54.  
  55. Genericrec *gl_find(Genericrec *table[], long name);
  56. void gl_insert( Genericrec *table[], Genericrec *entry );
  57. Genericrec *gl_remove( Genericrec *table[], long name);
  58.  
  59. #endif /* !__GL_ATTRIBUTIL_H__ */
  60.